#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
//int main()
//{	
//	int i = 0;
//	int k;
//	int shu=0;
//	scanf("%d", &k);
//	for(i = 100; i<1000; i++)
//	{
//		int a = i / 100;
//		int b = i % 100 / 10;
//		int c = (i % 100) % 10;
//		int pan1 = a * 10 + b;
//		int pan2 = b * 10 + c;
//		int pan3 = a * 100 + pan2;
//		if (pan1 % k == 0 && pan2 % k == 0 && pan3 % k == 0)
//		{
//			shu++;
//			printf("%d\n", i);
//		}
//	}
//	if (shu == 0)
//		printf("None!");
//	
//	return 0;
//}
//int main()
//{
//	int N;
//	scanf("%d", &N);
//	int arr[1000000] = {0};
//	int a[1000000] = { 0 };
//	for (int i = 0; i < N; i++)
//	{
//		scanf("%d", &arr[i]);
//	}
//	for (int i = 0; i < N; i++)
//	{
//		 a[arr[i]] = 1;
//	}
//	int connt = 0;
//	for (int i = 0; i < N; i++)
//	{
//		if (a[i] == 1)
//		 connt++;
//	}
//	printf("%d", connt);
//}
//#include<stdio.h>
//int main()
//{
//	int n;
//	scanf("%d",&n);
//	int k;
//	int count = 0;
//	for (int i=l; i <= n; i++)
//	{
//		scanf("%d", &k);
//			if (i == k)
//			count++;
//	}
//	printf("%d", count);
//	return 0;
//}
#define MAX_N 1000000
int main()
{
	int N;
	scanf("%d", &N);
	int arr[MAX_N];
	for int i = 0; i < N; i++)
	{
	scanf("%d", &arr[i]);
	}
	int a[MAX_N + 1] = { 0 };
	for (int i = 0; i < N; i++)
	{
		a[arr[i]] = 1;
	}
	int connt = 0;
	for (int i = 1; i <= N; i++)
	{
		if (a[i] == 1)
			connt++;
	}
	printf("%d", connt);
	return 0;
}